In one conventional network arrangement, a server is coupled to a switch. The switch is coupled to clients. The server provides application and network management services to the clients via and/or using the switch.
Typically, the server is based upon open and/or general purpose processor architectures, and the switch is based upon proprietary, special purpose, and/or application specific architectures. As a result, the programming languages, technologies, interfaces, and/or techniques that are used to program the server are generally incompatible with those are used to program the switch. This may significantly increase the amount of effort and/or expense involved in programming, modifying, and/or maintaining this conventional arrangement.
In this conventional arrangement, the server and the switch each constitute respective, separate network nodes that are coupled together via one or more network links. In the server, the one or more network links are coupled to a network interface controller. The network interface controller is coupled via an interconnect system to the server's processor and system memory. Data to be transmitted from the processor to the switch is stored in the system memory, is retrieved therefrom via the interconnect system by the network interface controller, and after being retrieved, is transmitted by the network interface controller to the switch via the one or more network links. A reverse process is used to transmit data from the switch to the processor. These data transmission processes involve significant amounts of latency and/or protocol processing (e.g., to address different protocols employed by the network links and the interconnect system).
Although the following Detailed Description will proceed with reference being made to illustrative embodiments, many alternatives, modifications, and variations thereof will be apparent to those skilled in the art. Accordingly, it is intended that the claimed subject matter be viewed broadly.